package design_pattern.builder.demo01;

/**
 * @version 1.0.0
 * Created by cyd on 2022-06-15 14:22:50
 * @ClassName : design_pattern.builder.demo01.Example03
 * @Description : 类描述
 */
public class Main {

    /**
     * 我们将建造过程和建造的产品分开了，使用了面向对象的设计理念，具备了一定的灵活性
     * <p>
     * 但是建造过程和产品耦合在一起，并不是好的设计，不方便拓展，可以看demo02的建造者模式的设计
     */
    public static void main(String[] args) {
        Phone miPhone = new Phone("mi-phone", "为发烧而生");
        miPhone.buildType("小米6");
        miPhone.installSoft("mi-ui-6");
        miPhone.testPhone("ok");
        miPhone.buildPhone("0001");
        System.out.println(miPhone);
        System.out.println("------------------");

        Phone iPhone = new Phone("iphone", "很贵");
        iPhone.buildType("iphone6");
        iPhone.installSoft("ios-6");
        iPhone.testPhone("ok");
        iPhone.buildPhone("0002");
        System.out.println(iPhone);

    }
}
